'use strict';

const Service = require('egg').Service;

class MessageService extends Service {

  /**
   * 获取列表
   */
  async list() {
    return await this.ctx.model.Message.findList(this.ctx.query);
  }

  /**
   * 获取总个数
   */
  async count() {
    return await this.ctx.model.Message.findCount(this.ctx.query);
  }

  /**
   * 添加数据
   * @param { Object } data 添加的数据
   */
  async add(data) {
    const { Message } = this.ctx.model;
    return await new Message({
      ...data,
      socketId: data.current,
    }).save();
  }

  /**
   * 删除数据
   */
  async destroy() {
    const { Message } = this.ctx.model;
    return await Message.removeModel(this.ctx.params.id);
  }

  /**
   * 批量删除
   * @param {*} ids id数组
   */
  async batchDelete(ids) {
    const { Message } = this.ctx.model;
    return await Message.batchDelete(ids);
  }
}

module.exports = MessageService;
